package com.hjb.service.product;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import com.hjb.service.domain.product.Product;
import com.hjb.service.domain.product.ProductExample;

/**
 * 产品接口业务处理类
 * @author zhangxl
 * @date 2017-07-20
 * @version 1.0
 */
public interface ProductService {
	
	/**
	 * 获取产品列表
	 * @param request
	 * @return
	 */
	public List<Map<String, Object>> getProductList(Map<String,Object> params);
	
	/**
	 * 获取产品列表详情
	 * @param request
	 * @return
	 */
	public Map<String, Object> getProductInfo(Map<String,Object> params);
	
	/**
	 * 新增产品
	 * @return
	 */
	public int insertProudt(Product product);
	
	/**
	 * 更新产品
	 * @return
	 */
	public int updateProudt(Product product);
	
	/**
	 * 购买活期产品
	 * @param request
	 * @return
	 */
	public Map<String,Object> buyCurrentProduct(HttpServletRequest request);
	
	/**
	 * 购买定期产品
	 * @param request
	 * @return
	 */
	public Map<String,Object> buyRegularProduct(HttpServletRequest request);
	
	/**
	 * 我的活期
	 * @param request
	 * @return
	 */
	public Map<String,Object> myCurrentAccount(HttpServletRequest request);
	
	/**
	 * 我的定期
	 * @param request
	 * @return
	 */
	public Map<String,Object> myFixedAccount(HttpServletRequest request);
	
	
	/**
	 * 活期赎回详情
	 * @param request
	 * @return
	 */
	public Map<String,Object> currentRedeemInfo(HttpServletRequest request);
	
	/**
	 * 活期赎回
	 * @param request
	 * @return
	 */
	public Map<String,Object> currentRedeem(HttpServletRequest request);
	
	/**
	 * 体验金产品购买
	 * @param request
	 * @return
	 */
	public Map<String,Object> buyExperienceProduct(HttpServletRequest request);
	
	/**
	 * 我的体验金
	 * @param request
	 * @return
	 */
	public Map<String,Object> myExperienceAccount(HttpServletRequest request);
	
	/**
	 * 更改定期回款方式
	 * @param request
	 * @return
	 */
	public Map<String,Object> changeFixedReturnType(HttpServletRequest request);
	
	/**
	 * 查询定期协议
	 * @param request
	 * @return
	 */
	public Map<String,Object> queryFixedAgreement(HttpServletRequest request);
	
	 List<Product> selectByExample(ProductExample example);
	
}
